


#include "OgreInterface.h"

int main(int argc, char *argv[])
{
    //This is the only line that associates all the code to follow with Ogre
    //Assuming alternative graphics modules were available to choose from, changing OgreInterface
    //  here to any other interface should theoretically result in the same operations being executed
    //  by a different engine.  This needs to be confirmed.
	GraphicsInterface *g = new OgreInterface();

	if( !g->initializeRenderer("Test Window")) {
	    g->powerDown();
	    return 0 ;
	}
    g->createLight( "point", 0, 40, 0 );
    g->setSkyBox( "../../resources/MarsMap" );

    //Add frame listener to handle window closing
    g->activateWindowListener();
    //...and mouse controlled camera
    g->activateMouseLookListener();

    //Start the render loop
    g->engageRenderLoop();
    //Once the render loop is interrupted...
    g->powerDown();
	//Properly shut down the system

	return 0 ;
}
